package com.zretc.dao;

import com.zretc.entity.Film;

import java.util.List;
import java.util.Map;

/**
 * @author 陈波
 * 影片dao层
 */
public interface FilmMapper {
    /**
     * @author 陈波
     * 添加一部电影
     * @param film 影片对象
     * @return 影响行数
     */
    int insertFilm(Film film);

    /**
     * @author 陈波
     * 根据影片编号删除影片
     * @param filmId 影片编号
     * @return 影响行数
     */
    int deleteFilmByFilmId(Integer filmId);

    /**
     * @author 陈波
     * 根据影片编号修改影片信息
     * @param film 影片对象
     * @return 影响行数
     */
    int updateFilmByFilmId(Film film);

    /**
     * @author 陈波
     * 多条件查询
     *      根据影片名称模糊查询
     *      根据上映时间模糊查询
     *      根据演员模糊查询
     *      根据类型模糊查询
     *      根据影片状态精确查询
     * @param params
     * @return
     */
    List<Film> findFilmByCondition(Map<String, String> params);

    /**
     * @author 陈波
     * 查看影片详情
     * @param filmId
     * @return
     */
    Film findFilmByFilmId(Integer filmId);

    /**
     * @author 陈波
     * 查看影片是否已上传
     * @param filmName
     * @return
     */
    Film findFilmByFilmName(String filmName);

    /**
     * @author 王兴杭
     * 获取电影的上映时间
     * @return 时间集合
     */
    List<String> findfilmReleaseTime();

    /**
     * @author 陈波
     * 文件导出
     * @return List<Film>
     */
    List<Film> findFilmListByexport();

}
